UserDB._updateUser   A
last analyzed

Complexity

Conditions 1
Paths 2

Size

Total Lines 17

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
nc 2
nop 5
dl 0
loc 17
rs 9.4285
c 1
b 0
f 0

1 Function

Rating   Name   Duplication   Size   Complexity  
A 0 15 3
1
/**
2
 * hsBot: Supply template and your bot is ready.
3
 * 
4
 * Hardik Shah <[email protected]>
5
 * 
6
 * MIT License
7
 */
8
9
'use strict';
10
11
function UserDB(){
12
  this.mem = [];
13
}
14
15
UserDB.prototype._findUser = function(userId){
16
  let user;
17
  this.mem.some(function(userObj){
18
    if(userObj.userId === userId){
19
      return user = userObj;
20
    } else{
21
      return false;
22
    }
23
  });
24
  return user;
25
};
26
27
UserDB.prototype._insertUser = function(userId, userName, pattern, preQ, topicName){
28
  let infoDict = {
29
    userName: userName,
30
    userId: userId,
31
    loggedIn: new Date().getTime(),
32
    activities: [{
33
      pattern: pattern,
34
      preQ: preQ,
35
      ut: new Date().getTime(),
36
      topic: topicName
37
    }]
38
  };
39
  this.mem.push(infoDict);
40
  return this.mem;
41
};
42
43
UserDB.prototype._updateUser = function(userId, userName, pattern, preQ, topicName){
44
  this.mem.some(function(userObj){
45
    if(userObj.userId === userId){
46
      var activityDict = {
47
        pattern: pattern,
48
        preQ: preQ,
49
        ut: new Date().getTime(),
50
        topic: topicName
51
      };
52
      userObj.activities.push(activityDict);
53
      userObj.userName = userObj.userName ? userObj.userName : userName;
54
      return true;
55
    } else {
56
      return false;
57
    }
58
  });
59
};
60
61
module.exports = UserDB;